home *** CD-ROM | disk | FTP | other *** search
-
-
- ;Program to maximize the potential of IBM and compatables' floppy
- ;disc drives....also makes them quieter.
- ;
- ;DOS sets floppy seek time at 8ms.. most drives will run at 3ms
- ;Drive parameter table works in multiples of 2. "Turbo" boards are
- ;faster, so experiment 'til you get errors and increment by next higher
- ;value.
- ;
- ;Accepts command line number and inserts in the appropriate memory
- ;location - if none,displays help screen and accepts keyboard input.
- ;
- ;The one glitch is that if you won't listen to reason and keep putting
- ;in invalid numbers, the thing won't exit. Of course, it seems pretty
- ;farfetched for someone to invoke a program and then refuse to use
- ;it.
- JMP MAIN
- CR equ 0d
- LF equ 0a
- data_table db 0ff,0ff,0ef,0ef,0df,0df,0cf ;can only use 2,4,6,8ms
- Help_mess db'Usage:fseek {value}',CR,LF,'$'
- _Action db'Now Changing Head Seek Time to '
- SEEK db'?'
- db' ms',CR,LF,'$'
- _Error db'Incorrect Value; Valid entry:2-8',CR,LF,'$'
-
- MAIN: mov si,081 ; check for command line entry
- mov cx,4
- COMMAND: lodsb
- KEYB: cmp al,031 ; valid figure? =>2
- ja _PARSE ; ok,process
- loopnz COMMAND
- jmp ERROR ; otherwise, cockpit error
-
- _PARSE: xor ah,ah
- cmp al,038 ; valid figure? =<8
- ja ERROR ; somebody goofed!!
- mov SEEK,al ; finally we can go to work
- sub al,032 ; change to binary
- mov si,offset data_table ; appropriate that sucker
- add si,ax ;
- lodsb ;
- xor dx,dx
- push dx
- pop es
- es mov [0522],ax ; Put new value into
- mov dx,offset _Action ; DOS drive parameter table
- mov ah,09 ;
- int 021
- int 020 ; we're done..simple,huh?
-
- ERROR: mov dx,offset Help_mess
- mov ah,09
- int 021
- mov dx,offset _Error
- mov ah,09
- int 021
- mov ah,00
- int 016
- jmp KEYB
-
-
-
-